package com.jiajia.study.mylist.stack;

import com.jiajia.study.mylist.MyArrayList;

/**
 * 自己实现 栈，用继承的方式
 *
 * 动态数组和链表都可以
 *
 * 继承的方式 有一个缺点就是接口没有办法控制
 * 很多的没有必要的接口外部也可以调用。
 * @author : zjj
 * @date : 2021/1/15 10:51
 */
public class MyStack<E> extends MyArrayList<E> {


    /**
     * 从栈顶弹出元素
     * @return 弹出元素
     */
    public E pop(){
        return remove(size - 1);
    }

    /**
     * 往栈顶添加一个元素
     * @param element 添加的元素
     *
     */
    public void push(E element){
        add(element);
    }

    /**
     * 获取栈顶元素，但是不删除元素
     * @return  栈顶元素
     */
    public E top(){
        return get(size - 1);
    }



}
